
#Title[ʏ2]
#Text[]
#Image[]
#BackGround[]
#BGM[]
#PlayLevel[Extra]
#ScriptVersion[2]
#Player[FREE]


script_enemy_main
{

	@Initialize
	{
	SetLife(4000);
	SetDamageRate(200,  100);
	SetTimer(60);
	SetInvincibility(250);
	SetEnemyMarker(true);
	SetGraphicRect(64,1,127,64);
	LoadGraphic("script\img\ExRumia.png");
	}
	//   ʒu܂ňړ
	SetMovePosition02(GetCenterX, GetCenterY - 100, 60);

	AtackTaskA;
	@MainLoop
	{
		yield;

		SetGraphicRect(0,1,63,64);
		if(GetSpeedX<0){
			SetGraphicRect(128,1,191,64);
		}
		if(GetSpeedX>0){
			SetGraphicRect(192,1,255,64);
		}

		SetCollisionA(GetX, GetY, 32);
		SetCollisionB(GetX, GetY, 24);
	}
	
	@DrawLoop
	{
		SetColor(255,255,255);
		SetAlpha(255);
		SetTexture("script\img\ExRumia.png");//摜͔q
		DrawGraphic(GetX,GetY);
	}
		
	@Finalize
	{
		DeleteGraphic("script\img\ExRumia.png");
	}
	//XyJ[h̔wi
	//Ă悢
/*	@BackGround
	{
	}
*/
	task AtackTaskA{
		wait(120);
		loop{
			let nway=1;
			let ammo=6;
			let spd=6;
			let basedir=GetAngleToPlayer;
			let dir=0;
			loop(ammo){
				loop(nway){
					CreateShot01(GetX,GetY,spd,basedir+dir,BLUE23,20);
					dir+=8;
				}
				nway++;
				basedir-=4;
				dir=0;
				spd+=-0.5;
			}
			wait(30);

			nway=1;
			ammo=15;
			let space=8;
			let interval=2;
			let rot=0.5;
			spd=4;
			loop(3){
				NitoriAtack(spd,90, space,-rot,ammo,interval,BLUE11,20);
				NitoriAtack(spd,240,space,-rot,ammo,interval,BLUE11,20);
				NitoriAtack(spd,300,space,-rot,ammo,interval,BLUE11,20);
				wait(ammo*interval);
				NitoriAtack(spd,90, space,rot,ammo,interval,BLUE11,20);
				NitoriAtack(spd,240,space,rot,ammo,interval,BLUE11,20);
				NitoriAtack(spd,300,space,rot,ammo,interval,BLUE11,20);
				wait(ammo*interval);
			}
			MoveTask;
			wait(120);
		}
	}
	task NitoriAtack(	//1
		spd,
		dir,
		space,
		rot,
		ammo,
		interval,
		grf,
		delay
	){
		let nway=1;
		loop(ammo){
			let cngdir=0;
			loop(nway){
				CreateShot02(GetX,GetY,spd*2,dir+cngdir,-spd/20,spd,grf,delay);
				cngdir+=-space*2;
			}
			nway++;
			dir+=space+rot;
			wait(interval);
		}
	}

	task MoveTask{		//@Ɉړp^[
		let ptn=0;
		if(GetX<GetCenterX-80){ptn=1;}
		if(GetX>GetCenterX+80){ptn=2;}
		if(ptn==0){
			if(GetX<GetPlayerX){ptn=1;}
			else{ptn=2;}
		}
		if(ptn==1){
			SetMovePosition02(rand(GetX+40,GetX+60), rand(GetClipMinY+80,GetCenterY-80), 40);
		}
		if(ptn==2){
			SetMovePosition02(rand(GetX-40,GetX-60), rand(GetClipMinY+80,GetCenterY-80), 40);
		}
	}


	function wait(n){
		loop(n){yield;}
	}

}

